/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.easoft.code.pos.ui.beans.pos;

import com.easoft.code.pos.data.pojos.PosUsuario;
import com.easoft.code.pos.data.pojos.Producto;

/**
 *
 * @author Eliu
 */
public class POSItem {

    private Producto producto;
    private String codProducto;
    private String codBarrProducto;
    private String nombreProducto;
    private Double cantidad = 0d;
    private Double precio = 0d;
    private Double descuentoAuto = 0d;
    private Double subtotal = 0d;
    private Double descuentoManual = 0d;
    private PosUsuario usuarioAut;

    public POSItem(Producto producto, Double precio, Double cantidad) {
        this.producto = producto;
        this.cantidad = cantidad;
        this.precio = precio;
        this.codBarrProducto = producto.getCodigoBarra();
        this.codProducto = producto.getCodigo();
        this.nombreProducto = producto.getNombre();
        this.descuentoAuto = producto.getDescuento() != null ? producto.getDescuento() : 0d;
        this.subtotal = cantidad * precio;
    }

    public POSItem(Producto producto, String codProducto, String nombreProducto, Double cantidad, Double precio, Double descuentoAuto, Double subtotal, Double descuentoManual) {
        this.producto = producto;
        this.codProducto = codProducto;
        this.codBarrProducto = codProducto;
        this.nombreProducto = nombreProducto;
        this.cantidad = cantidad;
        this.precio = precio;
        this.descuentoAuto = descuentoAuto;
        this.subtotal = subtotal;
        this.descuentoManual = descuentoManual;

        this.codBarrProducto = producto.getCodigoBarra();
        this.codProducto = producto.getCodigo();
        this.nombreProducto = producto.getNombre();
        this.subtotal = (cantidad * precio) - (descuentoAuto + descuentoManual);
    }

    public PosUsuario getUsuarioAut() {
        return usuarioAut;
    }

    public void setUsuarioAut(PosUsuario usuarioAut) {
        this.usuarioAut = usuarioAut;
    }

    public Double getDescuentoAuto() {
        return descuentoAuto;
    }

    public void setDescuentoAuto(Double descuentoAuto) {
        this.descuentoAuto = descuentoAuto;
    }

    public Double getDescuentoManual() {
        return descuentoManual;
    }

    public void setDescuentoManual(Double descuentoManual) {
        this.descuentoManual = descuentoManual;
    }

    public String getCodProducto() {
        return codProducto;
    }

    public void setCodProducto(String codProducto) {
        this.codProducto = codProducto;
    }

    public String getCodBarrProducto() {
        return codBarrProducto;
    }

    public void setCodBarrProducto(String codBarrProducto) {
        this.codBarrProducto = codBarrProducto;
    }

    public String getNombreProducto() {
        return nombreProducto;
    }

    public void setNombreProducto(String nombreProducto) {
        this.nombreProducto = nombreProducto;
    }

    public Producto getProducto() {
        return producto;
    }

    public void setProducto(Producto producto) {
        this.producto = producto;
    }

    public Double getCantidad() {
        return cantidad;
    }

    public void setCantidad(Double cantidad) {
        this.cantidad = cantidad;
    }

    public Double getPrecio() {
        return precio;
    }

    public void setPrecio(Double precio) {
        this.precio = precio;
    }

    public Double getDescuento() {
        return descuentoAuto;
    }

    public void setDescuento(Double descuento) {
        this.descuentoAuto = descuento;
    }

    public Double getSubtotal() {
        return subtotal;
    }

    public void setSubtotal(Double subtotal) {
        this.subtotal = subtotal;
    }
}
